/*
 * Template criado em 27/08/2008
 * 
 * Autores: Adriano Carvalho Portes
 *          Gabriel Levi R. C. Pereira
 *          Luiz Gustavo Loyola do Santos Filho 
 *          Igor Benício de Mesquita
 *          Sávio Aires
 *          Vinícius Moreira de Souza
 *          Willian Douglas
 */
package br.uniceub.fsw.template.vo;

import br.uniceub.fsw.template.dao.TemplateDAO;
import java.util.Date;

/**
 *  Esse local deve conter uma descrição geral do propósito da classe ou qualquer
 * comentário relevante.
 * 
 *  Tabela: TB_Template
 * 
 * @author Aluno RA
 */
public class TemplateVO {
    
    /**
     * Esse local deve conter uma descrição geral do propósito do atributo ou qualquer
     * comentário relevante.
     * 
     * Coluna: ID_Template
     */
    private Integer idTemplate;
    
    /**
     * Esse local deve conter uma descrição geral do propósito do atributo ou qualquer
     * comentário relevante.
     * 
     * Coluna: NO_Template
     */
    private String noTemplate;
    
    /**
     * Esse local deve conter uma descrição geral do propósito do atributo ou qualquer
     * comentário relevante.
     * 
     * Coluna: DT_Template
     */
    private Date dtTemplate;
    
    /**
     * Esse local deve conter uma descrição geral do propósito do atributo e relacionamento ou qualquer
     * comentário relevante.
     * 
     * Tabela referenciada: TB_Template
     * Coluna FK: CD_Template
     */
    private Integer cdTemplate;

    /**
     * Template relacionado pela coluna cdTemplate.
     */
    private TemplateVO template;
    
    /*
     * Getters e Setters.
     * Não é necessária a geração de javadoc para esses métodos.
     */
    public Date getDtTemplate() {
        return dtTemplate;
    }

    public void setDtTemplate(Date dtTemplate) {
        this.dtTemplate = dtTemplate;
    }

    public Integer getIdTemplate() {
        return idTemplate;
    }

    public void setIdTemplate(Integer idTemplate) {
        this.idTemplate = idTemplate;
    }

    public String getNoTemplate() {
        return noTemplate;
    }

    public void setNoTemplate(String noTemplate) {
        this.noTemplate = noTemplate;
    }

    public TemplateVO getTemplate() {
        
        if(this.template == null) {
            this.template = new TemplateDAO().consultarPorId(this.cdTemplate);
        }
        
        return template;
    }

    public void setTemplate(TemplateVO template) {
        this.template = template;
    }
    
    public Integer getCdTemplate() {
        return cdTemplate;
    }

    public void setCdTemplate(Integer cdTemplate) {
        this.cdTemplate = cdTemplate;
    }
}
